FUNOVA Preprocessing QC statistics ¶

January 2025¶

In [1]:
import os
NOVA_HOME = "/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA"
NOVA_DATA_HOME = '/home/labs/hornsteinlab/Collaboration/FUNOVA'

LOGS_PATH = os.path.join(NOVA_DATA_HOME, "outputs/preprocessing/logs/")
PLOT_PATH = os.path.join(NOVA_DATA_HOME, "outputs/logs/")

os.chdir(NOVA_HOME)

import pandas as pd
import contextlib
import io
from IPython.display import display, Javascript
import seaborn as sns
from tools.preprocessing_tools.qc_reports.qc_utils import log_files_qc, run_validate_folder_structure, display_diff, sample_and_calc_variance, \
                                                show_site_survival_dapi_brenner, show_site_survival_dapi_cellpose, \
                                                show_site_survival_dapi_tiling, show_site_survival_target_brenner, \
                                                calc_total_sums, plot_filtering_heatmap, show_total_sum_tables, \
                                                plot_cell_count, plot_catplot, plot_hm_combine_batches, plot_hm, \
                                                run_calc_hist_new, plot_marker_data, find_bad_wells, create_marker_info_df
                                                
from tools.preprocessing_tools.qc_reports.qc_config import (
    funova_markers as markers,
    funova_cell_lines as cell_lines,
    funova_cell_lines_to_cond as cell_lines_to_cond,
    funova_cell_lines_for_disp as cell_lines_for_disp,
    funova_reps as reps,
    funova_line_colors as line_colors,
    funova_lines_order as lines_order,
    funova_custom_palette as custom_palette,
    funova_expected_dapi_raw as expected_dapi_raw,
    funova_panels as panels,
    funova_marker_info as marker_info
)

from tools.show_images_utils import *
%load_ext autoreload
%autoreload 2
In [2]:
# choose batches
batches = ['Batch1', 'Batch2']#, 'batch2', 'batch3']
batches
Out[2]:
['Batch1', 'Batch2']

I have created a folder called 'Batch1' in the logs dir and put all files inside

In [3]:
validate_antibody = False
In [40]:
df = log_files_qc(LOGS_PATH, batches, only_wt_cond = False)
reading logs of Batch1

Total of 1 files were read.
Before dup handeling  (180333, 21)
After duplication removal #1: (180333, 22)
After duplication removal #2: (180333, 22)
In [52]:
df[['cell_line', 'marker', 'cell_line_cond']] = df[['cell_line', 'marker', 'cell_line_cond']].apply(lambda x: x.str.replace('_', '-', regex=False))
In [42]:
df['filename'] = df['filename'].str.split('-').str[0]
df['site_num'] = df['site_num'].str.split('-').str[0]
In [53]:
df_dapi = df[df.marker=='DAPI']
df_target = df[df.marker!='DAPI']

Actual Files Validation¶

Raw Files Validation¶

  1. How many site tiff files do we have in each folder?
  2. Are all existing files valid? (tif, at least 2049kB, not corrupetd)
In [7]:
root_directory_raw = os.path.join(NOVA_DATA_HOME, 'input', 'images', 'raw')
In [20]:
df_metadata = extract_image_metadata(root_directory_raw, FILE_EXTENSION = '.tiff', KEY_BATCH = 'Batch')
In [8]:
# root_path = "/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/"
# marker_info_df = create_marker_info_df(root_path)
In [15]:
batches_raw = [batch.replace("_16bit_no_downsample","") for batch in batches]
raws = run_validate_folder_structure(root_directory_raw, False, panels, markers.copy(), PLOT_PATH, marker_info,
                                    cell_lines_to_cond, reps, cell_lines_for_disp, expected_dapi_raw,
                                     batches=batches_raw, fig_width=8,fig_height = 40,
                                    expected_count=100, validate_antibody = validate_antibody)
Batch1
Folder structure is valid.
No bad files are found.
Total Sites:  118400
========
Batch2
Folder structure is valid.
No bad files are found.
Total Sites:  118400
========
====================

Processed Files Validation¶

  1. How many site npy files do we have in each folder? -> How many sites survived the pre-processing?
  2. Are all existing files valid? (at least 100kB, npy not corrupted)
In [16]:
root_directory_proc = os.path.join(NOVA_DATA_HOME, 'input', 'images', 'processed')
procs = run_validate_folder_structure(root_directory_proc, True, panels, markers, PLOT_PATH, marker_info,
                                    cell_lines_to_cond, reps, cell_lines_for_disp, expected_dapi_raw,
                                     batches=batches, fig_width=8,fig_height = 40,
                                    expected_count=100, validate_antibody = validate_antibody)
Batch1
Folder structure is valid.
No bad files are found.
Total Sites:  89058
========
Batch2
Folder structure is valid.
No bad files are found.
Total Sites:  72173
========
====================

Difference between Raw and Processed¶

In [18]:
display_diff(batches, raws, procs, PLOT_PATH, fig_width=8, fig_height = 40)
Batch1
========
Batch2
========

Variance in each batch (of processed files)¶

In [22]:
for batch in batches:
    with contextlib.redirect_stdout(io.StringIO()):
        var = sample_and_calc_variance(root_directory_proc, batch, 
                                       sample_size_per_markers=200, cond_count=1, rep_count=len(reps), 
                                       num_markers=len(markers))
    print(f'{batch} var: ',var)
Batch1 var:  0.02010689204799957
Batch2 var:  0.02211178779242227

Preprocessing Filtering qc¶

By order of filtering

1. % site survival after Brenner on DAPI channel¶

Percentage out of the total sites

In [54]:
dapi_filter_by_brenner = show_site_survival_dapi_brenner(df_dapi,batches, line_colors, panels,
                                                        figsize=(6,18), reps=reps, vmax=100)
In [58]:
show_images(df_metadata, marker='DAPI', show_DAPI=False, batch=2, panel='L', cell_line='C9orf72-HRE-1008566', rep=1,
            condition='stress', funova=True, samples=5)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
1
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch2/C9orf72-HRE-1008566/panelL/stress/rep1/DAPI/r12c23f61-ch1t1.tiff
2
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch2/C9orf72-HRE-1008566/panelL/stress/rep1/DAPI/r12c23f07-ch1t1.tiff
3
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch2/C9orf72-HRE-1008566/panelL/stress/rep1/DAPI/r12c23f81-ch1t1.tiff
4
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch2/C9orf72-HRE-1008566/panelL/stress/rep1/DAPI/r12c23f01-ch1t1.tiff
5
Img shape: (1024, 1024)
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch2/C9orf72-HRE-1008566/panelL/stress/rep1/DAPI/r12c23f72-ch1t1.tiff
In [61]:
show_images(df_metadata, marker='DAPI', show_DAPI=False, batch=2, panel='D', cell_line='Control-1017118', rep=1,
            condition='stress', funova=True, samples=5)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
1
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch2/Control-1017118/panelD/stress/rep1/DAPI/r15c07f66-ch1t1.tiff
2
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch2/Control-1017118/panelD/stress/rep1/DAPI/r15c07f59-ch1t1.tiff
3
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch2/Control-1017118/panelD/stress/rep1/DAPI/r15c07f26-ch1t1.tiff
4
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch2/Control-1017118/panelD/stress/rep1/DAPI/r15c07f67-ch1t1.tiff
5
Img shape: (1024, 1024)
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch2/Control-1017118/panelD/stress/rep1/DAPI/r15c07f46-ch1t1.tiff
In [113]:
df_metadata
Out[113]:
Path RootFolder Marker Condition CellLine Batch_Rep Rep Batch Panel image_id
0 /home/labs/hornsteinlab/Collaboration/FUNOVA/i... /home/labs/hornsteinlab/Collaboration/FUNOVA/i... Autophagy stress TDP--43-G348V-1057052 Batch2/rep1 rep1 Batch2 panelD r10c07f45-ch2t1
1 /home/labs/hornsteinlab/Collaboration/FUNOVA/i... /home/labs/hornsteinlab/Collaboration/FUNOVA/i... Autophagy stress TDP--43-G348V-1057052 Batch2/rep1 rep1 Batch2 panelD r10c07f67-ch2t1
2 /home/labs/hornsteinlab/Collaboration/FUNOVA/i... /home/labs/hornsteinlab/Collaboration/FUNOVA/i... Autophagy stress TDP--43-G348V-1057052 Batch2/rep1 rep1 Batch2 panelD r10c07f87-ch2t1
3 /home/labs/hornsteinlab/Collaboration/FUNOVA/i... /home/labs/hornsteinlab/Collaboration/FUNOVA/i... Autophagy stress TDP--43-G348V-1057052 Batch2/rep1 rep1 Batch2 panelD r10c07f70-ch2t1
4 /home/labs/hornsteinlab/Collaboration/FUNOVA/i... /home/labs/hornsteinlab/Collaboration/FUNOVA/i... Autophagy stress TDP--43-G348V-1057052 Batch2/rep1 rep1 Batch2 panelD r10c07f30-ch2t1
... ... ... ... ... ... ... ... ... ... ...
473595 /home/labs/hornsteinlab/Collaboration/FUNOVA/i... /home/labs/hornsteinlab/Collaboration/FUNOVA/i... DAPI Untreated Control-1025045 Batch1/rep2 rep2 Batch1 panelK r03c22f40-ch1t1
473596 /home/labs/hornsteinlab/Collaboration/FUNOVA/i... /home/labs/hornsteinlab/Collaboration/FUNOVA/i... DAPI Untreated Control-1025045 Batch1/rep2 rep2 Batch1 panelK r03c22f31-ch1t1
473597 /home/labs/hornsteinlab/Collaboration/FUNOVA/i... /home/labs/hornsteinlab/Collaboration/FUNOVA/i... DAPI Untreated Control-1025045 Batch1/rep2 rep2 Batch1 panelK r03c22f71-ch1t1
473598 /home/labs/hornsteinlab/Collaboration/FUNOVA/i... /home/labs/hornsteinlab/Collaboration/FUNOVA/i... DAPI Untreated Control-1025045 Batch1/rep2 rep2 Batch1 panelK r03c22f58-ch1t1
473599 /home/labs/hornsteinlab/Collaboration/FUNOVA/i... /home/labs/hornsteinlab/Collaboration/FUNOVA/i... DAPI Untreated Control-1025045 Batch1/rep2 rep2 Batch1 panelK r03c22f94-ch1t1

473600 rows × 10 columns

In [104]:
dfb
Out[104]:
Path RootFolder Marker Condition CellLine Batch_Rep Rep Batch Target_Sharpness_Brenner Panel image_id
0 /home/labs/hornsteinlab/Collaboration/FUNOVA/i... /home/labs/hornsteinlab/Collaboration/FUNOVA/i... Autophagy Untreated C9orf72-HRE_1008566 Batch1/rep1 rep1 Batch1 1935.180168 D r04c07f31-ch2t1
1 /home/labs/hornsteinlab/Collaboration/FUNOVA/i... /home/labs/hornsteinlab/Collaboration/FUNOVA/i... Autophagy Untreated C9orf72-HRE_1008566 Batch1/rep1 rep1 Batch1 611.305103 D r04c07f82-ch2t1
2 /home/labs/hornsteinlab/Collaboration/FUNOVA/i... /home/labs/hornsteinlab/Collaboration/FUNOVA/i... Autophagy Untreated C9orf72-HRE_1008566 Batch1/rep1 rep1 Batch1 871.004172 D r04c07f62-ch2t1
3 /home/labs/hornsteinlab/Collaboration/FUNOVA/i... /home/labs/hornsteinlab/Collaboration/FUNOVA/i... Autophagy Untreated C9orf72-HRE_1008566 Batch1/rep1 rep1 Batch1 869.652847 D r04c07f14-ch2t1
4 /home/labs/hornsteinlab/Collaboration/FUNOVA/i... /home/labs/hornsteinlab/Collaboration/FUNOVA/i... Autophagy Untreated C9orf72-HRE_1008566 Batch1/rep1 rep1 Batch1 1258.132105 D r04c07f11-ch2t1
... ... ... ... ... ... ... ... ... ... ... ...
236795 /home/labs/hornsteinlab/Collaboration/FUNOVA/i... /home/labs/hornsteinlab/Collaboration/FUNOVA/i... Necroptosis_pMLKL stress TDP--43-N390D_1005373 Batch2/rep2 rep2 Batch2 16394.368782 K r14c22f60-ch3t1
236796 /home/labs/hornsteinlab/Collaboration/FUNOVA/i... /home/labs/hornsteinlab/Collaboration/FUNOVA/i... Necroptosis_pMLKL stress TDP--43-N390D_1005373 Batch2/rep2 rep2 Batch2 3175.760650 K r14c22f07-ch3t1
236797 /home/labs/hornsteinlab/Collaboration/FUNOVA/i... /home/labs/hornsteinlab/Collaboration/FUNOVA/i... Necroptosis_pMLKL stress TDP--43-N390D_1005373 Batch2/rep2 rep2 Batch2 3673.223571 K r14c22f55-ch3t1
236798 /home/labs/hornsteinlab/Collaboration/FUNOVA/i... /home/labs/hornsteinlab/Collaboration/FUNOVA/i... Necroptosis_pMLKL stress TDP--43-N390D_1005373 Batch2/rep2 rep2 Batch2 3987.187928 K r14c22f86-ch3t1
236799 /home/labs/hornsteinlab/Collaboration/FUNOVA/i... /home/labs/hornsteinlab/Collaboration/FUNOVA/i... Necroptosis_pMLKL stress TDP--43-N390D_1005373 Batch2/rep2 rep2 Batch2 2342.687136 K r14c22f02-ch3t1

236800 rows × 11 columns

In [135]:
temp1 = get_specific_imgs(dfb, marker='DAPI', batch=2,cell_line='Control_1017118', rep=1, condition='stress')
temp = temp1.loc[temp1.Panel =='D'].Target_Sharpness_Brenner
temp1 = temp1.Target_Sharpness_Brenner
In [136]:
plt.hist(temp1)
plt.hist(temp)
Out[136]:
(array([ 7.,  0.,  1.,  0.,  0.,  0.,  3.,  3.,  5., 81.]),
 array([  185.60997523,  9922.55692795, 19659.50388067, 29396.45083339,
        39133.39778611, 48870.34473883, 58607.29169155, 68344.23864427,
        78081.18559699, 87818.13254971, 97555.07950243]),
 <BarContainer object of 10 artists>)

2. % Site survival after Cellpose¶

Percentage out of the sites that passed the previous filter. In parenthesis are absolute values.

A site will be filtered out if Cellpose found 0 cells in it.

In [62]:
dapi_filter_by_cellpose = show_site_survival_dapi_cellpose(df_dapi, batches, dapi_filter_by_brenner, 
                                                           line_colors, panels, figsize=(6,18), reps=reps)

3. % Site survival by tiling¶

Percentage out of the sites that passed the previous filter. In parenthesis are absolute values.

A site will be filtered out if after tiling, no tile is containing at least 85% of a cell that Cellpose detected.

In [63]:
dapi_filter_by_tiling=show_site_survival_dapi_tiling(df_dapi, batches, dapi_filter_by_cellpose, 
                                                     line_colors, panels, figsize=(6,18), reps=reps)

4. % Site survival after Brenner on target channel¶

Percentage out of the sites that passed the previous filter. In parenthesis are absolute values (if different than the percentages).

In [64]:
show_site_survival_target_brenner(df_dapi, df_target, dapi_filter_by_tiling,
                                 figsize=(6,24), markers=markers)
In [65]:
## Images that were completely removed and their corresponding DAPI 
show_images(df_metadata, marker = 'Senescence-signaling', show_DAPI = True, 
            batch = 1, cell_line ='Control-1048087', 
            condition = 'stress', rep=2, funova = True, samples = 5)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
1
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch1/Control-1048087/panelL/stress/rep2/Senescence-signaling/r09c24f54-ch3t1.tiff
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch1/Control-1048087/panelL/stress/rep2/DAPI/r09c24f54-ch1t1.tiff
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
--------------------------------
2
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch1/Control-1048087/panelL/stress/rep2/Senescence-signaling/r09c24f03-ch3t1.tiff
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch1/Control-1048087/panelL/stress/rep2/DAPI/r09c24f03-ch1t1.tiff
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
--------------------------------
3
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch1/Control-1048087/panelL/stress/rep2/Senescence-signaling/r09c24f27-ch3t1.tiff
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch1/Control-1048087/panelL/stress/rep2/DAPI/r09c24f27-ch1t1.tiff
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
--------------------------------
4
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch1/Control-1048087/panelL/stress/rep2/Senescence-signaling/r09c24f83-ch3t1.tiff
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch1/Control-1048087/panelL/stress/rep2/DAPI/r09c24f83-ch1t1.tiff
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
--------------------------------
5
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch1/Control-1048087/panelL/stress/rep2/Senescence-signaling/r09c24f38-ch3t1.tiff
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch1/Control-1048087/panelL/stress/rep2/DAPI/r09c24f38-ch1t1.tiff
Img shape: (1024, 1024)
--------------------------------
In [83]:
show_images(df_metadata, marker='Parthanatos-early', show_DAPI=False, batch=2, panel='H', cell_line='TDP--43-G348V-1057052', 
            rep=2, condition='Untreated', funova=True, samples=5)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
1
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch2/TDP--43-G348V-1057052/panelH/Untreated/rep2/Parthanatos-early/r02c16f12-ch2t1.tiff
2
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch2/TDP--43-G348V-1057052/panelH/Untreated/rep2/Parthanatos-early/r02c16f18-ch2t1.tiff
3
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch2/TDP--43-G348V-1057052/panelH/Untreated/rep2/Parthanatos-early/r02c16f37-ch2t1.tiff
4
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch2/TDP--43-G348V-1057052/panelH/Untreated/rep2/Parthanatos-early/r02c16f05-ch2t1.tiff
5
Img shape: (1024, 1024)
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch2/TDP--43-G348V-1057052/panelH/Untreated/rep2/Parthanatos-early/r02c16f23-ch2t1.tiff
In [89]:
show_images(df_metadata, marker='Protein-degradation', show_DAPI=False, batch=2, panel='L', cell_line='C9orf72-HRE-981344', rep=1,
            condition='stress', funova=True, samples=5)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
1
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch2/C9orf72-HRE-981344/panelL/stress/rep1/Protein-degradation/r16c23f53-ch2t1.tiff
2
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch2/C9orf72-HRE-981344/panelL/stress/rep1/Protein-degradation/r16c23f78-ch2t1.tiff
3
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch2/C9orf72-HRE-981344/panelL/stress/rep1/Protein-degradation/r16c23f14-ch2t1.tiff
4
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch2/C9orf72-HRE-981344/panelL/stress/rep1/Protein-degradation/r16c23f77-ch2t1.tiff
5
Img shape: (1024, 1024)
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch2/C9orf72-HRE-981344/panelL/stress/rep1/Protein-degradation/r16c23f29-ch2t1.tiff

Find non valid wells

In [67]:
dfb = pd.read_csv("/home/labs/hornsteinlab/Collaboration/FUNOVA/outputs/preprocessing/brenner/raw_metrics280125_exp3.csv")
# Extract the panel (e.g., "panelD") from the Path column
dfb['Panel'] = dfb['Path'].str.extract(r'/panel([A-Z])/', expand=True)
dfb['image_id'] = dfb['Path'].apply(lambda path: path.split('/')[-1].split('.')[0])
find_bad_wells(dfb, threshold=50000, percentage_filter=70)
Out[67]:
Panel Condition CellLine Rep Batch Count_table1 Count_table2 Percentage Combination Marker
0 J stress C9orf72-HRE_981344 rep1 Batch1 221 300 73.666667 ['Panel', 'Condition', 'CellLine', 'Rep', 'Bat... NaN
1 L stress C9orf72-HRE_1008566 rep1 Batch2 285 300 95.000000 ['Panel', 'Condition', 'CellLine', 'Rep', 'Bat... NaN
2 L stress C9orf72-HRE_981344 rep1 Batch2 268 300 89.333333 ['Panel', 'Condition', 'CellLine', 'Rep', 'Bat... NaN
3 NaN Untreated TDP--43-G348V_1057052 rep2 Batch2 84 100 84.000000 ['Condition', 'CellLine', 'Rep', 'Batch', 'Mar... Parthanatos_early
4 NaN stress C9orf72-HRE_1008566 rep1 Batch2 96 100 96.000000 ['Condition', 'CellLine', 'Rep', 'Batch', 'Mar... Protein_degradation
5 NaN stress C9orf72-HRE_1008566 rep1 Batch2 94 100 94.000000 ['Condition', 'CellLine', 'Rep', 'Batch', 'Mar... Senescence_signaling
6 NaN stress C9orf72-HRE_981344 rep1 Batch1 91 100 91.000000 ['Condition', 'CellLine', 'Rep', 'Batch', 'Mar... DNA_damage_P53BP1
7 NaN stress C9orf72-HRE_981344 rep1 Batch1 77 100 77.000000 ['Condition', 'CellLine', 'Rep', 'Batch', 'Mar... Neuronal_activity
8 NaN stress C9orf72-HRE_981344 rep1 Batch2 90 100 90.000000 ['Condition', 'CellLine', 'Rep', 'Batch', 'Mar... Protein_degradation
9 NaN stress C9orf72-HRE_981344 rep1 Batch2 91 100 91.000000 ['Condition', 'CellLine', 'Rep', 'Batch', 'Mar... Senescence_signaling
10 NaN stress C9orf72-HRE_981344 rep2 Batch1 78 100 78.000000 ['Condition', 'CellLine', 'Rep', 'Batch', 'Mar... Nuclear_speckles_SC35
11 NaN stress C9orf72-HRE_981344 rep2 Batch2 79 100 79.000000 ['Condition', 'CellLine', 'Rep', 'Batch', 'Mar... DNA_damage_P53BP1
12 D stress Control_1017118 rep1 Batch2 92 100 92.000000 ['Panel', 'Condition', 'CellLine', 'Rep', 'Bat... DAPI
13 F stress C9orf72-HRE_981344 rep2 Batch1 78 100 78.000000 ['Panel', 'Condition', 'CellLine', 'Rep', 'Bat... Nuclear_speckles_SC35
14 H Untreated TDP--43-G348V_1057052 rep2 Batch2 84 100 84.000000 ['Panel', 'Condition', 'CellLine', 'Rep', 'Bat... Parthanatos_early
15 J stress C9orf72-HRE_981344 rep1 Batch1 91 100 91.000000 ['Panel', 'Condition', 'CellLine', 'Rep', 'Bat... DNA_damage_P53BP1
16 J stress C9orf72-HRE_981344 rep1 Batch1 77 100 77.000000 ['Panel', 'Condition', 'CellLine', 'Rep', 'Bat... Neuronal_activity
17 J stress C9orf72-HRE_981344 rep2 Batch2 79 100 79.000000 ['Panel', 'Condition', 'CellLine', 'Rep', 'Bat... DNA_damage_P53BP1
18 L stress C9orf72-HRE_1008566 rep1 Batch2 95 100 95.000000 ['Panel', 'Condition', 'CellLine', 'Rep', 'Bat... DAPI
19 L stress C9orf72-HRE_1008566 rep1 Batch2 96 100 96.000000 ['Panel', 'Condition', 'CellLine', 'Rep', 'Bat... Protein_degradation
20 L stress C9orf72-HRE_1008566 rep1 Batch2 94 100 94.000000 ['Panel', 'Condition', 'CellLine', 'Rep', 'Bat... Senescence_signaling
21 L stress C9orf72-HRE_981344 rep1 Batch2 87 100 87.000000 ['Panel', 'Condition', 'CellLine', 'Rep', 'Bat... DAPI
22 L stress C9orf72-HRE_981344 rep1 Batch2 90 100 90.000000 ['Panel', 'Condition', 'CellLine', 'Rep', 'Bat... Protein_degradation
23 L stress C9orf72-HRE_981344 rep1 Batch2 91 100 91.000000 ['Panel', 'Condition', 'CellLine', 'Rep', 'Bat... Senescence_signaling
In [68]:
thresholds = {
    "Stress_initiation": (0, 99),
    "Aberrant_splicing": (1, 97),
    "Autophagy": (5, 97),
    "DAPI": (0.2, 95),
    "Apoptosis": (0.27, 95),
    "impaired_Autophagosome": (5, 99),
    "Cytoskeleton": (10, 99.8),
    "DNA_damage_P53BP1": (0.3, 90),
    "DNA_damage_pH2Ax": (7, 85),
    "mature_Autophagosome": (2, 98),
    "Necrosis": (4, 95),
    "Neuronal_activity": (5, 90),
    "Nuclear_speckles_SC35": (0.2, 85),
    "Nuclear_speckles_SON": (0.2, 85),
    "Parthanatos_early": (0, 85),
    "Parthanatos_late": (5, 95),
    "Protein_degradation": (5, 92),
    "Senescence_signaling": (10, 90),
    "Splicing_factories": (0, 95),
    "TDP-43": (5, 99.2),
    "Ubiquitin_levels": (2, 90),
    "UPR_ATF4": (2, 99.7), 
    "UPR_ATF6": (3, 100),
    "UPR_IRE1a": (2, 98),
    "Necroptosis_pMLKL": (5, 90),
    "Necroptosis_HMGB1": (0.01, 90),
}
# Extended batch data with new entries
data = [
    (2, 'DNA_damage_pH2Ax', 1, 1017118, 'Untreated'),
    (2, 'Parthanatos_early', 1, 1048087, 'stress'),
    (2, 'DNA_damage_pH2Ax', 2, 1008566, 'stress'),
    (2, 'Parthanatos_early', 1, 981344, 'stress'),
    (2, 'Nuclear_speckles_SON', 1, 981344, 'stress'),
    (1, 'Autophagy', 1, 1057052, 'stress'),
    (1, 'impaired_Autophagosome', 1, 1057052, 'stress'),
    (1, 'UPR_IRE1a', 1, 1057052, 'stress'),
    (1, 'Ubiquitin_levels', 1, 1057052, 'stress'),
    (1, 'UPR_IRE1a', 1, 981344, 'stress'),
    (1, 'Ubiquitin_levels', 1, 981344, 'stress'),
    (1, 'DNA_damage_P53BP1', 1, 981344, 'stress'),
    (1, 'Neuronal_activity', 1, 981344, 'stress'),
    (1, 'Necroptosis_HMGB1', 1, 981344, 'stress'),
    (1, 'Necrosis', 1, 981344, 'stress'),
    (1, 'Nuclear_speckles_SC35', 2, 981344, 'stress'),
    (1, 'Splicing_factories', 2, 981344, 'stress'),
    (1, 'Aberrant_splicing', 2, 981344, 'stress'),
    (1, 'Parthanatos_late', 2, 981344, 'stress'),
    (1, 'Senescence_signaling', 2, 1048087, 'stress'),
    (1, 'Apoptosis', 2, 981344, 'stress'),
    (1, 'Necroptosis_pMLKL', 2, 981344, 'stress'),
    (2, 'Autophagy', 1, 1017118, 'stress'),
    (2, 'impaired_Autophagosome', 1, 1017118, 'stress'),
    (2, 'UPR_IRE1a', 1, 1048087, 'Untreated'),
    (2, 'UPR_IRE1a', 1, 1008566, 'stress'),
    (2, 'Ubiquitin_levels', 1, 1048087, 'Untreated'),
    (2, 'Ubiquitin_levels', 1, 1008566, 'stress'),
    (2, 'DNA_damage_P53BP1', 1, 1017118, 'stress'),
    (2, 'Neuronal_activity', 1, 1017118, 'stress'),
    (2, 'DNA_damage_P53BP1', 2, 981344, 'stress'),
    (2, 'Neuronal_activity', 2, 981344, 'stress'),
    (2, 'DNA_damage_P53BP1', 1, 981344, 'stress'),
    (2, 'Neuronal_activity', 1, 981344, 'stress'),
    (2, 'DNA_damage_P53BP1', 1, 1057052, 'stress'),
    (2, 'Neuronal_activity', 1, 1057052, 'stress'),
    (2, 'DNA_damage_P53BP1', 1, 1005373, 'stress'),
    (2, 'Neuronal_activity', 1, 1005373, 'stress'),
    (2, 'DNA_damage_P53BP1', 2, 1057052, 'stress'),
    (2, 'Neuronal_activity', 2, 1057052, 'stress'),
    (2, 'Necroptosis_HMGB1', 1, 981344, 'Untreated'),
    (2, 'Necrosis', 1, 981344, 'Untreated'),
    (2, 'Necroptosis_HMGB1', 2, 981344, 'stress'),
    (2, 'Necrosis', 2, 981344, 'stress'),
    (2, 'Necroptosis_HMGB1', 2, 1001733, 'stress'),
    (2, 'Necrosis', 2, 1001733, 'stress'),
    (2, 'Necroptosis_HMGB1', 2, 1005373, 'stress'),
    (2, 'Necrosis', 2, 1005373, 'stress')
]

# Cell line ID mapping
cell_line_mapping = {
    1008566: 'C9orf72-HRE_1008566',
    981344: 'C9orf72-HRE_981344',
    1001733: 'Control_1001733',
    1017118: 'Control_1017118',
    1025045: 'Control_1025045',
    1048087: 'Control_1048087',
    1057052: 'TDP--43-G348V_1057052',
    1005373: 'TDP--43-N390D_1005373'
}

# Convert to DataFrame (renamed to `marker_df`)
marker_df = pd.DataFrame(data, columns=['Batch', 'Name', 'Rep', 'CellLineID', 'Condition'])

lower_thresh_DAPI, upper_thresh_DAPI = thresholds['DAPI']
cb = get_specific_imgs(dfb, marker='DAPI')
cb = cb.loc[(cb.Batch == 'Batch1') | (cb.Batch == 'Batch2')].Target_Sharpness_Brenner.values
lower_p_DAPI = np.percentile(cb, lower_thresh_DAPI)
upper_p_DAPI = np.percentile(cb, upper_thresh_DAPI)

# Iterate over each row
for _, row in marker_df.iterrows():
    batch, marker, rep, cell_line_id, condition = row

    # Match Cell Line Name
    cell_line = cell_line_mapping.get(cell_line_id, f'Unknown_{cell_line_id}')

    # Fetch images based on specific conditions
    cb1 = get_specific_imgs(dfb, marker=marker, batch=batch, rep=rep, 
                           cell_line=cell_line, condition=condition)
    
    dapi_paths = cb1.Path.apply(lambda p: get_dapi_path(p, marker1=marker, marker2='DAPI', funova=True))
    dfDAPI = dfb.loc[dfb['Path'].isin(dapi_paths)].Target_Sharpness_Brenner.values
    cb1 = cb1.Target_Sharpness_Brenner.values

    # Print statistics dynamically for the specific selection
    print(f"Stats for marker: {marker}, batch: {batch}, rep: {rep}, cell_line: {cell_line}, condition: {condition}")
    print(f"Mean: {np.mean(cb1):.2f}, Median: {np.median(cb1):.2f}, "
          f"10th Percentile: {np.percentile(cb1, 10):.2f}, "
          f"50th Percentile (Median): {np.percentile(cb1, 50):.2f}, "
          f"90th Percentile: {np.percentile(cb1, 90):.2f}")

    # Fetch images for the entire dataset with the given marker
    cb = get_specific_imgs(dfb, marker=marker)
    cb = cb.loc[(cb.Batch == 'Batch1') | (cb.Batch == 'Batch2')].Target_Sharpness_Brenner.values
    
    lower_thresh, upper_thresh = thresholds[marker]
    lower_p = np.percentile(cb, lower_thresh)
    upper_p = np.percentile(cb, upper_thresh)
    
    filtered_out = np.sum((cb1 < lower_p) | (cb1 > upper_p))
    total_count = len(cb1)
    filtered_percentage = (filtered_out / total_count) * 100 if total_count > 0 else 0
    
    filtered_out_DAPI = np.sum((dfDAPI < lower_p_DAPI) | (dfDAPI > upper_p_DAPI))
    total_count_DAPI = len(dfDAPI)
    filtered_percentage_DAPI = (filtered_out_DAPI / total_count_DAPI) * 100 if total_count_DAPI > 0 else 0

    # Print statistics dynamically for the full dataset
    print(f"Stats for marker: {marker} (All batches, reps, and cell lines)")
    print(f"Mean: {np.mean(cb):.2f}, Median: {np.median(cb):.2f}, "
          f"10th Percentile: {np.percentile(cb, 10):.2f}, "
          f"50th Percentile (Median): {np.percentile(cb, 50):.2f}, "
          f"90th Percentile: {np.percentile(cb, 90):.2f}")
    
    print(f"Threshold Percentiles ({lower_thresh}% - {upper_thresh}%): {lower_p:.2f} - {upper_p:.2f}")
    print(f"Filtered Out: {filtered_out}/{total_count} ({filtered_percentage:.2f}%)")
    print(f"Filtered Out_DAPI: {filtered_out_DAPI}/{total_count_DAPI} ({filtered_percentage_DAPI:.2f}%)")

    print("-" * 80)  # Separator for readability
Stats for marker: DNA_damage_pH2Ax, batch: 2, rep: 1, cell_line: Control_1017118, condition: Untreated
Mean: 18838.00, Median: 20707.26, 10th Percentile: 10668.05, 50th Percentile (Median): 20707.26, 90th Percentile: 25411.50
Stats for marker: DNA_damage_pH2Ax (All batches, reps, and cell lines)
Mean: 8754.40, Median: 5613.45, 10th Percentile: 1402.97, 50th Percentile (Median): 5613.45, 90th Percentile: 14670.41
Threshold Percentiles (7% - 85%): 880.46 - 11278.07
Filtered Out: 87/100 (87.00%)
Filtered Out_DAPI: 1/100 (1.00%)
--------------------------------------------------------------------------------
Stats for marker: Parthanatos_early, batch: 2, rep: 1, cell_line: Control_1048087, condition: stress
Mean: 4417.15, Median: 3275.69, 10th Percentile: 1385.82, 50th Percentile (Median): 3275.69, 90th Percentile: 10353.77
Stats for marker: Parthanatos_early (All batches, reps, and cell lines)
Mean: 5137.73, Median: 1356.69, 10th Percentile: 435.16, 50th Percentile (Median): 1356.69, 90th Percentile: 7115.26
Threshold Percentiles (0% - 85%): 76.89 - 3000.88
Filtered Out: 58/100 (58.00%)
Filtered Out_DAPI: 11/100 (11.00%)
--------------------------------------------------------------------------------
Stats for marker: DNA_damage_pH2Ax, batch: 2, rep: 2, cell_line: C9orf72-HRE_1008566, condition: stress
Mean: 2744.98, Median: 306.88, 10th Percentile: 138.35, 50th Percentile (Median): 306.88, 90th Percentile: 5602.55
Stats for marker: DNA_damage_pH2Ax (All batches, reps, and cell lines)
Mean: 8754.40, Median: 5613.45, 10th Percentile: 1402.97, 50th Percentile (Median): 5613.45, 90th Percentile: 14670.41
Threshold Percentiles (7% - 85%): 880.46 - 11278.07
Filtered Out: 66/100 (66.00%)
Filtered Out_DAPI: 17/100 (17.00%)
--------------------------------------------------------------------------------
Stats for marker: Parthanatos_early, batch: 2, rep: 1, cell_line: C9orf72-HRE_981344, condition: stress
Mean: 25628.22, Median: 17188.75, 10th Percentile: 1701.12, 50th Percentile (Median): 17188.75, 90th Percentile: 77173.85
Stats for marker: Parthanatos_early (All batches, reps, and cell lines)
Mean: 5137.73, Median: 1356.69, 10th Percentile: 435.16, 50th Percentile (Median): 1356.69, 90th Percentile: 7115.26
Threshold Percentiles (0% - 85%): 76.89 - 3000.88
Filtered Out: 79/100 (79.00%)
Filtered Out_DAPI: 5/100 (5.00%)
--------------------------------------------------------------------------------
Stats for marker: Nuclear_speckles_SON, batch: 2, rep: 1, cell_line: C9orf72-HRE_981344, condition: stress
Mean: 35049.12, Median: 22153.54, 10th Percentile: 1366.38, 50th Percentile (Median): 22153.54, 90th Percentile: 89777.08
Stats for marker: Nuclear_speckles_SON (All batches, reps, and cell lines)
Mean: 8487.77, Median: 1007.12, 10th Percentile: 542.70, 50th Percentile (Median): 1007.12, 90th Percentile: 25995.89
Threshold Percentiles (0.2% - 85%): 281.61 - 4041.04
Filtered Out: 76/100 (76.00%)
Filtered Out_DAPI: 2/100 (2.00%)
--------------------------------------------------------------------------------
Stats for marker: Autophagy, batch: 1, rep: 1, cell_line: TDP--43-G348V_1057052, condition: stress
Mean: 10093.72, Median: 531.17, 10th Percentile: 157.05, 50th Percentile (Median): 531.17, 90th Percentile: 15555.22
Stats for marker: Autophagy (All batches, reps, and cell lines)
Mean: 2324.85, Median: 1347.71, 10th Percentile: 308.42, 50th Percentile (Median): 1347.71, 90th Percentile: 3511.05
Threshold Percentiles (5% - 97%): 222.36 - 5255.08
Filtered Out: 57/100 (57.00%)
Filtered Out_DAPI: 20/100 (20.00%)
--------------------------------------------------------------------------------
Stats for marker: impaired_Autophagosome, batch: 1, rep: 1, cell_line: TDP--43-G348V_1057052, condition: stress
Mean: 7503.05, Median: 1186.66, 10th Percentile: 633.22, 50th Percentile (Median): 1186.66, 90th Percentile: 13287.96
Stats for marker: impaired_Autophagosome (All batches, reps, and cell lines)
Mean: 2689.62, Median: 1989.26, 10th Percentile: 852.36, 50th Percentile (Median): 1989.26, 90th Percentile: 3844.37
Threshold Percentiles (5% - 99%): 506.44 - 18506.37
Filtered Out: 17/100 (17.00%)
Filtered Out_DAPI: 20/100 (20.00%)
--------------------------------------------------------------------------------
Stats for marker: UPR_IRE1a, batch: 1, rep: 1, cell_line: TDP--43-G348V_1057052, condition: stress
Mean: 12446.03, Median: 1629.60, 10th Percentile: 691.88, 50th Percentile (Median): 1629.60, 90th Percentile: 59199.03
Stats for marker: UPR_IRE1a (All batches, reps, and cell lines)
Mean: 3151.35, Median: 2478.02, 10th Percentile: 1032.42, 50th Percentile (Median): 2478.02, 90th Percentile: 4380.11
Threshold Percentiles (2% - 98%): 500.31 - 7289.88
Filtered Out: 26/100 (26.00%)
Filtered Out_DAPI: 26/100 (26.00%)
--------------------------------------------------------------------------------
Stats for marker: Ubiquitin_levels, batch: 1, rep: 1, cell_line: TDP--43-G348V_1057052, condition: stress
Mean: 31823.53, Median: 12149.22, 10th Percentile: 5346.91, 50th Percentile (Median): 12149.22, 90th Percentile: 97827.21
Stats for marker: Ubiquitin_levels (All batches, reps, and cell lines)
Mean: 5765.68, Median: 4180.66, 10th Percentile: 1406.83, 50th Percentile (Median): 4180.66, 90th Percentile: 8203.24
Threshold Percentiles (2% - 90%): 661.91 - 8203.24
Filtered Out: 66/100 (66.00%)
Filtered Out_DAPI: 26/100 (26.00%)
--------------------------------------------------------------------------------
Stats for marker: UPR_IRE1a, batch: 1, rep: 1, cell_line: C9orf72-HRE_981344, condition: stress
Mean: 6038.85, Median: 2291.70, 10th Percentile: 1186.16, 50th Percentile (Median): 2291.70, 90th Percentile: 15993.96
Stats for marker: UPR_IRE1a (All batches, reps, and cell lines)
Mean: 3151.35, Median: 2478.02, 10th Percentile: 1032.42, 50th Percentile (Median): 2478.02, 90th Percentile: 4380.11
Threshold Percentiles (2% - 98%): 500.31 - 7289.88
Filtered Out: 25/100 (25.00%)
Filtered Out_DAPI: 21/100 (21.00%)
--------------------------------------------------------------------------------
Stats for marker: Ubiquitin_levels, batch: 1, rep: 1, cell_line: C9orf72-HRE_981344, condition: stress
Mean: 32535.45, Median: 13961.59, 10th Percentile: 2585.12, 50th Percentile (Median): 13961.59, 90th Percentile: 92073.41
Stats for marker: Ubiquitin_levels (All batches, reps, and cell lines)
Mean: 5765.68, Median: 4180.66, 10th Percentile: 1406.83, 50th Percentile (Median): 4180.66, 90th Percentile: 8203.24
Threshold Percentiles (2% - 90%): 661.91 - 8203.24
Filtered Out: 68/100 (68.00%)
Filtered Out_DAPI: 21/100 (21.00%)
--------------------------------------------------------------------------------
Stats for marker: DNA_damage_P53BP1, batch: 1, rep: 1, cell_line: C9orf72-HRE_981344, condition: stress
Mean: 83518.02, Median: 94207.86, 10th Percentile: 53655.27, 50th Percentile (Median): 94207.86, 90th Percentile: 98298.86
Stats for marker: DNA_damage_P53BP1 (All batches, reps, and cell lines)
Mean: 7988.53, Median: 807.94, 10th Percentile: 300.40, 50th Percentile (Median): 807.94, 90th Percentile: 26387.46
Threshold Percentiles (0.3% - 90%): 141.60 - 26387.46
Filtered Out: 97/100 (97.00%)
Filtered Out_DAPI: 65/100 (65.00%)
--------------------------------------------------------------------------------
Stats for marker: Neuronal_activity, batch: 1, rep: 1, cell_line: C9orf72-HRE_981344, condition: stress
Mean: 72466.41, Median: 86382.04, 10th Percentile: 25235.22, 50th Percentile (Median): 86382.04, 90th Percentile: 94564.54
Stats for marker: Neuronal_activity (All batches, reps, and cell lines)
Mean: 7014.46, Median: 2313.03, 10th Percentile: 961.78, 50th Percentile (Median): 2313.03, 90th Percentile: 8882.09
Threshold Percentiles (5% - 90%): 720.54 - 8882.09
Filtered Out: 99/100 (99.00%)
Filtered Out_DAPI: 65/100 (65.00%)
--------------------------------------------------------------------------------
Stats for marker: Necroptosis_HMGB1, batch: 1, rep: 1, cell_line: C9orf72-HRE_981344, condition: stress
Mean: 56228.74, Median: 58945.84, 10th Percentile: 12549.80, 50th Percentile (Median): 58945.84, 90th Percentile: 98325.30
Stats for marker: Necroptosis_HMGB1 (All batches, reps, and cell lines)
Mean: 6658.95, Median: 824.32, 10th Percentile: 326.90, 50th Percentile (Median): 824.32, 90th Percentile: 14553.35
Threshold Percentiles (0.01% - 90%): 116.38 - 14553.35
Filtered Out: 86/100 (86.00%)
Filtered Out_DAPI: 47/100 (47.00%)
--------------------------------------------------------------------------------
Stats for marker: Necrosis, batch: 1, rep: 1, cell_line: C9orf72-HRE_981344, condition: stress
Mean: 31248.68, Median: 2777.40, 10th Percentile: 1073.19, 50th Percentile (Median): 2777.40, 90th Percentile: 93448.21
Stats for marker: Necrosis (All batches, reps, and cell lines)
Mean: 4499.97, Median: 1645.52, 10th Percentile: 896.73, 50th Percentile (Median): 1645.52, 90th Percentile: 3915.14
Threshold Percentiles (4% - 95%): 636.23 - 7107.17
Filtered Out: 42/100 (42.00%)
Filtered Out_DAPI: 47/100 (47.00%)
--------------------------------------------------------------------------------
Stats for marker: Nuclear_speckles_SC35, batch: 1, rep: 2, cell_line: C9orf72-HRE_981344, condition: stress
Mean: 72938.76, Median: 87505.81, 10th Percentile: 23095.22, 50th Percentile (Median): 87505.81, 90th Percentile: 95186.46
Stats for marker: Nuclear_speckles_SC35 (All batches, reps, and cell lines)
Mean: 6544.52, Median: 957.65, 10th Percentile: 534.14, 50th Percentile (Median): 957.65, 90th Percentile: 12064.62
Threshold Percentiles (0.2% - 85%): 258.82 - 2543.98
Filtered Out: 99/100 (99.00%)
Filtered Out_DAPI: 49/100 (49.00%)
--------------------------------------------------------------------------------
Stats for marker: Splicing_factories, batch: 1, rep: 2, cell_line: C9orf72-HRE_981344, condition: stress
Mean: 54112.27, Median: 49446.25, 10th Percentile: 8593.07, 50th Percentile (Median): 49446.25, 90th Percentile: 100212.20
Stats for marker: Splicing_factories (All batches, reps, and cell lines)
Mean: 2978.87, Median: 626.68, 10th Percentile: 276.03, 50th Percentile (Median): 626.68, 90th Percentile: 1899.90
Threshold Percentiles (0% - 95%): 111.23 - 5836.77
Filtered Out: 91/100 (91.00%)
Filtered Out_DAPI: 49/100 (49.00%)
--------------------------------------------------------------------------------
Stats for marker: Aberrant_splicing, batch: 1, rep: 2, cell_line: C9orf72-HRE_981344, condition: stress
Mean: 27932.63, Median: 13144.94, 10th Percentile: 7882.15, 50th Percentile (Median): 13144.94, 90th Percentile: 87572.43
Stats for marker: Aberrant_splicing (All batches, reps, and cell lines)
Mean: 8166.03, Median: 6349.42, 10th Percentile: 2695.15, 50th Percentile (Median): 6349.42, 90th Percentile: 14128.50
Threshold Percentiles (1% - 97%): 242.60 - 19755.72
Filtered Out: 32/100 (32.00%)
Filtered Out_DAPI: 34/100 (34.00%)
--------------------------------------------------------------------------------
Stats for marker: Parthanatos_late, batch: 1, rep: 2, cell_line: C9orf72-HRE_981344, condition: stress
Mean: 19081.00, Median: 3941.15, 10th Percentile: 1283.63, 50th Percentile (Median): 3941.15, 90th Percentile: 77362.24
Stats for marker: Parthanatos_late (All batches, reps, and cell lines)
Mean: 3836.63, Median: 2591.29, 10th Percentile: 1184.37, 50th Percentile (Median): 2591.29, 90th Percentile: 6267.01
Threshold Percentiles (5% - 95%): 914.30 - 7237.04
Filtered Out: 45/100 (45.00%)
Filtered Out_DAPI: 34/100 (34.00%)
--------------------------------------------------------------------------------
Stats for marker: Senescence_signaling, batch: 1, rep: 2, cell_line: Control_1048087, condition: stress
Mean: 23694.13, Median: 23690.13, 10th Percentile: 20558.55, 50th Percentile (Median): 23690.13, 90th Percentile: 27428.32
Stats for marker: Senescence_signaling (All batches, reps, and cell lines)
Mean: 7948.93, Median: 2798.33, 10th Percentile: 1349.50, 50th Percentile (Median): 2798.33, 90th Percentile: 8807.32
Threshold Percentiles (10% - 90%): 1349.50 - 8807.32
Filtered Out: 99/100 (99.00%)
Filtered Out_DAPI: 12/100 (12.00%)
--------------------------------------------------------------------------------
Stats for marker: Apoptosis, batch: 1, rep: 2, cell_line: C9orf72-HRE_981344, condition: stress
Mean: 35619.88, Median: 2481.69, 10th Percentile: 393.72, 50th Percentile (Median): 2481.69, 90th Percentile: 102597.95
Stats for marker: Apoptosis (All batches, reps, and cell lines)
Mean: 4833.76, Median: 932.10, 10th Percentile: 546.90, 50th Percentile (Median): 932.10, 90th Percentile: 2526.15
Threshold Percentiles (0.27% - 95%): 252.85 - 13142.16
Filtered Out: 40/100 (40.00%)
Filtered Out_DAPI: 41/100 (41.00%)
--------------------------------------------------------------------------------
Stats for marker: Necroptosis_pMLKL, batch: 1, rep: 2, cell_line: C9orf72-HRE_981344, condition: stress
Mean: 37191.21, Median: 5457.77, 10th Percentile: 2601.01, 50th Percentile (Median): 5457.77, 90th Percentile: 104876.88
Stats for marker: Necroptosis_pMLKL (All batches, reps, and cell lines)
Mean: 7252.56, Median: 4269.27, 10th Percentile: 2534.47, 50th Percentile (Median): 4269.27, 90th Percentile: 7690.68
Threshold Percentiles (5% - 90%): 1408.56 - 7690.68
Filtered Out: 41/100 (41.00%)
Filtered Out_DAPI: 41/100 (41.00%)
--------------------------------------------------------------------------------
Stats for marker: Autophagy, batch: 2, rep: 1, cell_line: Control_1017118, condition: stress
Mean: 28492.27, Median: 23594.09, 10th Percentile: 2303.97, 50th Percentile (Median): 23594.09, 90th Percentile: 69949.43
Stats for marker: Autophagy (All batches, reps, and cell lines)
Mean: 2324.85, Median: 1347.71, 10th Percentile: 308.42, 50th Percentile (Median): 1347.71, 90th Percentile: 3511.05
Threshold Percentiles (5% - 97%): 222.36 - 5255.08
Filtered Out: 82/100 (82.00%)
Filtered Out_DAPI: 10/100 (10.00%)
--------------------------------------------------------------------------------
Stats for marker: impaired_Autophagosome, batch: 2, rep: 1, cell_line: Control_1017118, condition: stress
Mean: 22885.30, Median: 15687.97, 10th Percentile: 887.39, 50th Percentile (Median): 15687.97, 90th Percentile: 57051.98
Stats for marker: impaired_Autophagosome (All batches, reps, and cell lines)
Mean: 2689.62, Median: 1989.26, 10th Percentile: 852.36, 50th Percentile (Median): 1989.26, 90th Percentile: 3844.37
Threshold Percentiles (5% - 99%): 506.44 - 18506.37
Filtered Out: 54/100 (54.00%)
Filtered Out_DAPI: 10/100 (10.00%)
--------------------------------------------------------------------------------
Stats for marker: UPR_IRE1a, batch: 2, rep: 1, cell_line: Control_1048087, condition: Untreated
Mean: 14329.68, Median: 1444.15, 10th Percentile: 933.28, 50th Percentile (Median): 1444.15, 90th Percentile: 63322.41
Stats for marker: UPR_IRE1a (All batches, reps, and cell lines)
Mean: 3151.35, Median: 2478.02, 10th Percentile: 1032.42, 50th Percentile (Median): 2478.02, 90th Percentile: 4380.11
Threshold Percentiles (2% - 98%): 500.31 - 7289.88
Filtered Out: 27/100 (27.00%)
Filtered Out_DAPI: 3/100 (3.00%)
--------------------------------------------------------------------------------
Stats for marker: UPR_IRE1a, batch: 2, rep: 1, cell_line: C9orf72-HRE_1008566, condition: stress
Mean: 3678.84, Median: 1119.25, 10th Percentile: 660.99, 50th Percentile (Median): 1119.25, 90th Percentile: 6801.02
Stats for marker: UPR_IRE1a (All batches, reps, and cell lines)
Mean: 3151.35, Median: 2478.02, 10th Percentile: 1032.42, 50th Percentile (Median): 2478.02, 90th Percentile: 4380.11
Threshold Percentiles (2% - 98%): 500.31 - 7289.88
Filtered Out: 16/100 (16.00%)
Filtered Out_DAPI: 16/100 (16.00%)
--------------------------------------------------------------------------------
Stats for marker: Ubiquitin_levels, batch: 2, rep: 1, cell_line: Control_1048087, condition: Untreated
Mean: 9994.41, Median: 1666.91, 10th Percentile: 770.08, 50th Percentile (Median): 1666.91, 90th Percentile: 35706.55
Stats for marker: Ubiquitin_levels (All batches, reps, and cell lines)
Mean: 5765.68, Median: 4180.66, 10th Percentile: 1406.83, 50th Percentile (Median): 4180.66, 90th Percentile: 8203.24
Threshold Percentiles (2% - 90%): 661.91 - 8203.24
Filtered Out: 23/100 (23.00%)
Filtered Out_DAPI: 3/100 (3.00%)
--------------------------------------------------------------------------------
Stats for marker: Ubiquitin_levels, batch: 2, rep: 1, cell_line: C9orf72-HRE_1008566, condition: stress
Mean: 3673.48, Median: 1328.66, 10th Percentile: 659.91, 50th Percentile (Median): 1328.66, 90th Percentile: 4999.67
Stats for marker: Ubiquitin_levels (All batches, reps, and cell lines)
Mean: 5765.68, Median: 4180.66, 10th Percentile: 1406.83, 50th Percentile (Median): 4180.66, 90th Percentile: 8203.24
Threshold Percentiles (2% - 90%): 661.91 - 8203.24
Filtered Out: 18/100 (18.00%)
Filtered Out_DAPI: 16/100 (16.00%)
--------------------------------------------------------------------------------
Stats for marker: DNA_damage_P53BP1, batch: 2, rep: 1, cell_line: Control_1017118, condition: stress
Mean: 54449.24, Median: 64084.40, 10th Percentile: 221.07, 50th Percentile (Median): 64084.40, 90th Percentile: 98549.48
Stats for marker: DNA_damage_P53BP1 (All batches, reps, and cell lines)
Mean: 7988.53, Median: 807.94, 10th Percentile: 300.40, 50th Percentile (Median): 807.94, 90th Percentile: 26387.46
Threshold Percentiles (0.3% - 90%): 141.60 - 26387.46
Filtered Out: 70/100 (70.00%)
Filtered Out_DAPI: 9/100 (9.00%)
--------------------------------------------------------------------------------
Stats for marker: Neuronal_activity, batch: 2, rep: 1, cell_line: Control_1017118, condition: stress
Mean: 47661.43, Median: 36102.11, 10th Percentile: 352.42, 50th Percentile (Median): 36102.11, 90th Percentile: 101714.40
Stats for marker: Neuronal_activity (All batches, reps, and cell lines)
Mean: 7014.46, Median: 2313.03, 10th Percentile: 961.78, 50th Percentile (Median): 2313.03, 90th Percentile: 8882.09
Threshold Percentiles (5% - 90%): 720.54 - 8882.09
Filtered Out: 86/100 (86.00%)
Filtered Out_DAPI: 9/100 (9.00%)
--------------------------------------------------------------------------------
Stats for marker: DNA_damage_P53BP1, batch: 2, rep: 2, cell_line: C9orf72-HRE_981344, condition: stress
Mean: 74803.66, Median: 89672.90, 10th Percentile: 25375.82, 50th Percentile (Median): 89672.90, 90th Percentile: 97936.84
Stats for marker: DNA_damage_P53BP1 (All batches, reps, and cell lines)
Mean: 7988.53, Median: 807.94, 10th Percentile: 300.40, 50th Percentile (Median): 807.94, 90th Percentile: 26387.46
Threshold Percentiles (0.3% - 90%): 141.60 - 26387.46
Filtered Out: 89/100 (89.00%)
Filtered Out_DAPI: 1/100 (1.00%)
--------------------------------------------------------------------------------
Stats for marker: Neuronal_activity, batch: 2, rep: 2, cell_line: C9orf72-HRE_981344, condition: stress
Mean: 61241.55, Median: 82278.91, 10th Percentile: 6375.08, 50th Percentile (Median): 82278.91, 90th Percentile: 102188.02
Stats for marker: Neuronal_activity (All batches, reps, and cell lines)
Mean: 7014.46, Median: 2313.03, 10th Percentile: 961.78, 50th Percentile (Median): 2313.03, 90th Percentile: 8882.09
Threshold Percentiles (5% - 90%): 720.54 - 8882.09
Filtered Out: 89/100 (89.00%)
Filtered Out_DAPI: 1/100 (1.00%)
--------------------------------------------------------------------------------
Stats for marker: DNA_damage_P53BP1, batch: 2, rep: 1, cell_line: C9orf72-HRE_981344, condition: stress
Mean: 31289.12, Median: 25727.80, 10th Percentile: 4034.59, 50th Percentile (Median): 25727.80, 90th Percentile: 76519.94
Stats for marker: DNA_damage_P53BP1 (All batches, reps, and cell lines)
Mean: 7988.53, Median: 807.94, 10th Percentile: 300.40, 50th Percentile (Median): 807.94, 90th Percentile: 26387.46
Threshold Percentiles (0.3% - 90%): 141.60 - 26387.46
Filtered Out: 49/100 (49.00%)
Filtered Out_DAPI: 65/100 (65.00%)
--------------------------------------------------------------------------------
Stats for marker: Neuronal_activity, batch: 2, rep: 1, cell_line: C9orf72-HRE_981344, condition: stress
Mean: 18718.35, Median: 11194.35, 10th Percentile: 2121.93, 50th Percentile (Median): 11194.35, 90th Percentile: 49448.15
Stats for marker: Neuronal_activity (All batches, reps, and cell lines)
Mean: 7014.46, Median: 2313.03, 10th Percentile: 961.78, 50th Percentile (Median): 2313.03, 90th Percentile: 8882.09
Threshold Percentiles (5% - 90%): 720.54 - 8882.09
Filtered Out: 70/100 (70.00%)
Filtered Out_DAPI: 65/100 (65.00%)
--------------------------------------------------------------------------------
Stats for marker: DNA_damage_P53BP1, batch: 2, rep: 1, cell_line: TDP--43-G348V_1057052, condition: stress
Mean: 24851.24, Median: 8950.50, 10th Percentile: 248.29, 50th Percentile (Median): 8950.50, 90th Percentile: 78042.50
Stats for marker: DNA_damage_P53BP1 (All batches, reps, and cell lines)
Mean: 7988.53, Median: 807.94, 10th Percentile: 300.40, 50th Percentile (Median): 807.94, 90th Percentile: 26387.46
Threshold Percentiles (0.3% - 90%): 141.60 - 26387.46
Filtered Out: 39/100 (39.00%)
Filtered Out_DAPI: 3/100 (3.00%)
--------------------------------------------------------------------------------
Stats for marker: Neuronal_activity, batch: 2, rep: 1, cell_line: TDP--43-G348V_1057052, condition: stress
Mean: 14498.46, Median: 2731.83, 10th Percentile: 852.73, 50th Percentile (Median): 2731.83, 90th Percentile: 58945.06
Stats for marker: Neuronal_activity (All batches, reps, and cell lines)
Mean: 7014.46, Median: 2313.03, 10th Percentile: 961.78, 50th Percentile (Median): 2313.03, 90th Percentile: 8882.09
Threshold Percentiles (5% - 90%): 720.54 - 8882.09
Filtered Out: 38/100 (38.00%)
Filtered Out_DAPI: 3/100 (3.00%)
--------------------------------------------------------------------------------
Stats for marker: DNA_damage_P53BP1, batch: 2, rep: 1, cell_line: TDP--43-N390D_1005373, condition: stress
Mean: 27017.36, Median: 21935.59, 10th Percentile: 3824.03, 50th Percentile (Median): 21935.59, 90th Percentile: 63846.69
Stats for marker: DNA_damage_P53BP1 (All batches, reps, and cell lines)
Mean: 7988.53, Median: 807.94, 10th Percentile: 300.40, 50th Percentile (Median): 807.94, 90th Percentile: 26387.46
Threshold Percentiles (0.3% - 90%): 141.60 - 26387.46
Filtered Out: 47/100 (47.00%)
Filtered Out_DAPI: 0/100 (0.00%)
--------------------------------------------------------------------------------
Stats for marker: Neuronal_activity, batch: 2, rep: 1, cell_line: TDP--43-N390D_1005373, condition: stress
Mean: 11230.68, Median: 8165.40, 10th Percentile: 1360.62, 50th Percentile (Median): 8165.40, 90th Percentile: 26959.74
Stats for marker: Neuronal_activity (All batches, reps, and cell lines)
Mean: 7014.46, Median: 2313.03, 10th Percentile: 961.78, 50th Percentile (Median): 2313.03, 90th Percentile: 8882.09
Threshold Percentiles (5% - 90%): 720.54 - 8882.09
Filtered Out: 49/100 (49.00%)
Filtered Out_DAPI: 0/100 (0.00%)
--------------------------------------------------------------------------------
Stats for marker: DNA_damage_P53BP1, batch: 2, rep: 2, cell_line: TDP--43-G348V_1057052, condition: stress
Mean: 12007.11, Median: 416.05, 10th Percentile: 250.09, 50th Percentile (Median): 416.05, 90th Percentile: 45695.88
Stats for marker: DNA_damage_P53BP1 (All batches, reps, and cell lines)
Mean: 7988.53, Median: 807.94, 10th Percentile: 300.40, 50th Percentile (Median): 807.94, 90th Percentile: 26387.46
Threshold Percentiles (0.3% - 90%): 141.60 - 26387.46
Filtered Out: 19/100 (19.00%)
Filtered Out_DAPI: 5/100 (5.00%)
--------------------------------------------------------------------------------
Stats for marker: Neuronal_activity, batch: 2, rep: 2, cell_line: TDP--43-G348V_1057052, condition: stress
Mean: 10555.90, Median: 2065.12, 10th Percentile: 1095.65, 50th Percentile (Median): 2065.12, 90th Percentile: 26907.30
Stats for marker: Neuronal_activity (All batches, reps, and cell lines)
Mean: 7014.46, Median: 2313.03, 10th Percentile: 961.78, 50th Percentile (Median): 2313.03, 90th Percentile: 8882.09
Threshold Percentiles (5% - 90%): 720.54 - 8882.09
Filtered Out: 25/100 (25.00%)
Filtered Out_DAPI: 5/100 (5.00%)
--------------------------------------------------------------------------------
Stats for marker: Necroptosis_HMGB1, batch: 2, rep: 1, cell_line: C9orf72-HRE_981344, condition: Untreated
Mean: 13866.75, Median: 305.46, 10th Percentile: 192.58, 50th Percentile (Median): 305.46, 90th Percentile: 62556.31
Stats for marker: Necroptosis_HMGB1 (All batches, reps, and cell lines)
Mean: 6658.95, Median: 824.32, 10th Percentile: 326.90, 50th Percentile (Median): 824.32, 90th Percentile: 14553.35
Threshold Percentiles (0.01% - 90%): 116.38 - 14553.35
Filtered Out: 21/100 (21.00%)
Filtered Out_DAPI: 0/100 (0.00%)
--------------------------------------------------------------------------------
Stats for marker: Necrosis, batch: 2, rep: 1, cell_line: C9orf72-HRE_981344, condition: Untreated
Mean: 8763.85, Median: 1061.54, 10th Percentile: 603.71, 50th Percentile (Median): 1061.54, 90th Percentile: 10871.74
Stats for marker: Necrosis (All batches, reps, and cell lines)
Mean: 4499.97, Median: 1645.52, 10th Percentile: 896.73, 50th Percentile (Median): 1645.52, 90th Percentile: 3915.14
Threshold Percentiles (4% - 95%): 636.23 - 7107.17
Filtered Out: 24/100 (24.00%)
Filtered Out_DAPI: 0/100 (0.00%)
--------------------------------------------------------------------------------
Stats for marker: Necroptosis_HMGB1, batch: 2, rep: 2, cell_line: C9orf72-HRE_981344, condition: stress
Mean: 49904.58, Median: 38394.38, 10th Percentile: 10692.39, 50th Percentile (Median): 38394.38, 90th Percentile: 98432.14
Stats for marker: Necroptosis_HMGB1 (All batches, reps, and cell lines)
Mean: 6658.95, Median: 824.32, 10th Percentile: 326.90, 50th Percentile (Median): 824.32, 90th Percentile: 14553.35
Threshold Percentiles (0.01% - 90%): 116.38 - 14553.35
Filtered Out: 79/100 (79.00%)
Filtered Out_DAPI: 0/100 (0.00%)
--------------------------------------------------------------------------------
Stats for marker: Necrosis, batch: 2, rep: 2, cell_line: C9orf72-HRE_981344, condition: stress
Mean: 24736.07, Median: 2939.83, 10th Percentile: 943.57, 50th Percentile (Median): 2939.83, 90th Percentile: 93897.43
Stats for marker: Necrosis (All batches, reps, and cell lines)
Mean: 4499.97, Median: 1645.52, 10th Percentile: 896.73, 50th Percentile (Median): 1645.52, 90th Percentile: 3915.14
Threshold Percentiles (4% - 95%): 636.23 - 7107.17
Filtered Out: 39/100 (39.00%)
Filtered Out_DAPI: 0/100 (0.00%)
--------------------------------------------------------------------------------
Stats for marker: Necroptosis_HMGB1, batch: 2, rep: 2, cell_line: Control_1001733, condition: stress
Mean: 55276.97, Median: 62715.87, 10th Percentile: 2903.11, 50th Percentile (Median): 62715.87, 90th Percentile: 98433.42
Stats for marker: Necroptosis_HMGB1 (All batches, reps, and cell lines)
Mean: 6658.95, Median: 824.32, 10th Percentile: 326.90, 50th Percentile (Median): 824.32, 90th Percentile: 14553.35
Threshold Percentiles (0.01% - 90%): 116.38 - 14553.35
Filtered Out: 76/100 (76.00%)
Filtered Out_DAPI: 1/100 (1.00%)
--------------------------------------------------------------------------------
Stats for marker: Necrosis, batch: 2, rep: 2, cell_line: Control_1001733, condition: stress
Mean: 37068.91, Median: 16906.15, 10th Percentile: 994.81, 50th Percentile (Median): 16906.15, 90th Percentile: 97674.09
Stats for marker: Necrosis (All batches, reps, and cell lines)
Mean: 4499.97, Median: 1645.52, 10th Percentile: 896.73, 50th Percentile (Median): 1645.52, 90th Percentile: 3915.14
Threshold Percentiles (4% - 95%): 636.23 - 7107.17
Filtered Out: 63/100 (63.00%)
Filtered Out_DAPI: 1/100 (1.00%)
--------------------------------------------------------------------------------
Stats for marker: Necroptosis_HMGB1, batch: 2, rep: 2, cell_line: TDP--43-N390D_1005373, condition: stress
Mean: 32283.94, Median: 19431.21, 10th Percentile: 3408.00, 50th Percentile (Median): 19431.21, 90th Percentile: 93524.24
Stats for marker: Necroptosis_HMGB1 (All batches, reps, and cell lines)
Mean: 6658.95, Median: 824.32, 10th Percentile: 326.90, 50th Percentile (Median): 824.32, 90th Percentile: 14553.35
Threshold Percentiles (0.01% - 90%): 116.38 - 14553.35
Filtered Out: 54/100 (54.00%)
Filtered Out_DAPI: 0/100 (0.00%)
--------------------------------------------------------------------------------
Stats for marker: Necrosis, batch: 2, rep: 2, cell_line: TDP--43-N390D_1005373, condition: stress
Mean: 17291.72, Median: 1803.69, 10th Percentile: 890.09, 50th Percentile (Median): 1803.69, 90th Percentile: 79014.25
Stats for marker: Necrosis (All batches, reps, and cell lines)
Mean: 4499.97, Median: 1645.52, 10th Percentile: 896.73, 50th Percentile (Median): 1645.52, 90th Percentile: 3915.14
Threshold Percentiles (4% - 95%): 636.23 - 7107.17
Filtered Out: 30/100 (30.00%)
Filtered Out_DAPI: 0/100 (0.00%)
--------------------------------------------------------------------------------
In [139]:
show_images(df_metadata, marker='DNA-damage-pH2Ax', show_DAPI=True, batch=2, cell_line='C9orf72-HRE-1008566', rep=2,
            condition='stress', funova=True, samples=5)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
1
Img shape: (1024, 1024)
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch2/C9orf72-HRE-1008566/panelH/stress/rep2/DNA-damage-pH2Ax/r12c16f42-ch3t1.tiff
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch1/C9orf72-HRE-1008566/panelH/stress/rep2/DAPI/r12c16f42-ch1t1.tiff
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
--------------------------------
2
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch2/C9orf72-HRE-1008566/panelH/stress/rep2/DNA-damage-pH2Ax/r12c16f20-ch3t1.tiff
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch1/C9orf72-HRE-1008566/panelH/stress/rep2/DAPI/r12c16f20-ch1t1.tiff
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
--------------------------------
3
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch2/C9orf72-HRE-1008566/panelH/stress/rep2/DNA-damage-pH2Ax/r12c16f52-ch3t1.tiff
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch1/C9orf72-HRE-1008566/panelH/stress/rep2/DAPI/r12c16f52-ch1t1.tiff
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
--------------------------------
4
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch2/C9orf72-HRE-1008566/panelH/stress/rep2/DNA-damage-pH2Ax/r12c16f89-ch3t1.tiff
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch1/C9orf72-HRE-1008566/panelH/stress/rep2/DAPI/r12c16f89-ch1t1.tiff
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
--------------------------------
5
Img shape: (1024, 1024)
WARNING:root:The image shape (1080, 1080) isn't as expected (1024, 1024).
Cropping image to fit
WARNING:root:Removing pixels from the frame (28, 28)
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch2/C9orf72-HRE-1008566/panelH/stress/rep2/DNA-damage-pH2Ax/r12c16f98-ch3t1.tiff
/home/labs/hornsteinlab/Collaboration/FUNOVA/input/images/raw/Batch1/C9orf72-HRE-1008566/panelH/stress/rep2/DAPI/r12c16f98-ch1t1.tiff
Img shape: (1024, 1024)
--------------------------------

Statistics About the Processed Files¶

In [69]:
names = ['Total number of tiles', 'Total number of whole cells']
stats = ['n_valid_tiles','site_whole_cells_counts_sum','site_cell_count','site_cell_count_sum']
total_sum = calc_total_sums(df_target, df_dapi, stats, markers)
In [70]:
plot_marker_data(total_sum, split_by_cell_line=True)
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
In [71]:
plot_marker_data(total_sum, split_by_cell_line=False)
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1309: FutureWarning: 

The `ci` parameter is deprecated. Use `errorbar=None` for the same effect.

  y='marker',

Total tiles¶

In [72]:
total_sum.n_valid_tiles.sum()
Out[72]:
787463

Total whole nuclei in tiles¶

In [73]:
total_sum[total_sum.marker =='DAPI'].site_whole_cells_counts_sum.sum()
Out[73]:
315848.0

Total nuclei in sites¶

In [74]:
total_sum[total_sum.marker =='DAPI'].site_cell_count.sum()
Out[74]:
929893.0
In [75]:
show_total_sum_tables(total_sum)
n_valid_tiles % valid tiles site_whole_cells_counts_sum site_cell_count
Batch1
count 1181.000000 1181.000000 1181.000000 1.181000e+03
mean 392.540220 3.925402 468.429297 1.370996e+03
std 223.349922 2.233499 295.036673 9.612851e+02
min 2.000000 0.020000 2.000000 2.000000e+00
25% 230.000000 2.300000 254.000000 6.670000e+02
50% 362.000000 3.620000 419.000000 1.169000e+03
75% 531.000000 5.310000 616.000000 1.801000e+03
max 1157.000000 11.570000 1527.000000 4.865000e+03
sum 463590.000000 NaN 553215.000000 1.619146e+06
expected_count 450.000000 450.000000 450.000000 4.500000e+02
n_valid_tiles % valid tiles site_whole_cells_counts_sum site_cell_count
Batch2
count 1180.000000 1180.000000 1180.000000 1.180000e+03
mean 274.468644 2.744686 332.405932 9.582271e+02
std 215.952885 2.159529 280.652143 9.001070e+02
min 0.000000 0.000000 0.000000 0.000000e+00
25% 114.000000 1.140000 128.000000 3.147500e+02
50% 222.000000 2.220000 253.000000 6.765000e+02
75% 399.000000 3.990000 468.250000 1.376250e+03
max 1198.000000 11.980000 1576.000000 4.868000e+03
sum 323873.000000 NaN 392239.000000 1.130708e+06
expected_count 450.000000 450.000000 450.000000 4.500000e+02
n valid tiles % valid tiles site_whole_cells_counts_sum site_cell_count
All batches
count 2361.000000 2361.000000 2361.000000 2.361000e+03
mean 333.529437 3.335294 400.446421 1.164699e+03
std 227.436492 2.274365 295.804504 9.536247e+02
min 0.000000 0.000000 0.000000 0.000000e+00
25% 161.000000 1.610000 178.000000 4.510000e+02
50% 292.000000 2.920000 334.000000 9.070000e+02
75% 461.000000 4.610000 553.000000 1.601000e+03
max 1198.000000 11.980000 1576.000000 4.868000e+03
sum 787463.000000 NaN 945454.000000 2.749854e+06
expected_count 450.000000 450.000000 450.000000 4.500000e+02

Show Total Tile Counts¶

For each batch, cell line, replicate and markerTotal number of tiles

In [76]:
to_heatmap = total_sum.rename(columns={'n_valid_tiles':'index'})
plot_filtering_heatmap(to_heatmap, extra_index='marker', vmin=None, vmax=None,
                      xlabel = 'Total number of tiles', show_sum=True, figsize=(6,24))
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:388: UserWarning: set_ticklabels() should only be used with a fixed number of ticks, i.e. after set_ticks() or using a FixedLocator.
  ax.set_yticklabels(ax.get_yticklabels(), fontsize=10)
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:388: UserWarning: set_ticklabels() should only be used with a fixed number of ticks, i.e. after set_ticks() or using a FixedLocator.
  ax.set_yticklabels(ax.get_yticklabels(), fontsize=10)
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:388: UserWarning: set_ticklabels() should only be used with a fixed number of ticks, i.e. after set_ticks() or using a FixedLocator.
  ax.set_yticklabels(ax.get_yticklabels(), fontsize=10)
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:388: UserWarning: set_ticklabels() should only be used with a fixed number of ticks, i.e. after set_ticks() or using a FixedLocator.
  ax.set_yticklabels(ax.get_yticklabels(), fontsize=10)

Show Total Whole Cell Counts¶

For each batch, cell line, replicate and markerTotal number of tiles

In [77]:
to_heatmap = total_sum.rename(columns={'site_whole_cells_counts_sum':'index'})
plot_filtering_heatmap(to_heatmap, extra_index='marker', vmin=None, vmax=None,
                      xlabel = 'Total number of whole cells', show_sum=True, figsize=(6,24))
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:388: UserWarning: set_ticklabels() should only be used with a fixed number of ticks, i.e. after set_ticks() or using a FixedLocator.
  ax.set_yticklabels(ax.get_yticklabels(), fontsize=10)
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:388: UserWarning: set_ticklabels() should only be used with a fixed number of ticks, i.e. after set_ticks() or using a FixedLocator.
  ax.set_yticklabels(ax.get_yticklabels(), fontsize=10)
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:388: UserWarning: set_ticklabels() should only be used with a fixed number of ticks, i.e. after set_ticks() or using a FixedLocator.
  ax.set_yticklabels(ax.get_yticklabels(), fontsize=10)
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:388: UserWarning: set_ticklabels() should only be used with a fixed number of ticks, i.e. after set_ticks() or using a FixedLocator.
  ax.set_yticklabels(ax.get_yticklabels(), fontsize=10)

Show Cell Count Statistics per Batch¶

In [78]:
df_no_empty_sites = df_dapi[df_dapi.n_valid_tiles !=0]
plot_cell_count(df_no_empty_sites, lines_order, custom_palette, y='site_cell_count_sum', 
                title='Cell Count Average per Site (from tiles)', figsize=(16,6))

plot_cell_count(df_no_empty_sites, lines_order, custom_palette, y='site_whole_cells_counts_sum',
                title='Whole Cell Count Average per Site',figsize=(16,6))

plot_cell_count(df_no_empty_sites, lines_order, custom_palette, y='site_cell_count',
               title='Cellpose Cell Count Average per Site',figsize=(16,6))

Show Tiles per Site Statistics¶

In [79]:
df_dapi.groupby(['cell_line_cond']).n_valid_tiles.mean()
Out[79]:
cell_line_cond
C9orf72-HRE-1008566 Untreated      2.450518
C9orf72-HRE-1008566 stress         2.512361
C9orf72-HRE-981344 Untreated       2.192503
C9orf72-HRE-981344 stress          1.274109
Control-1001733 Untreated          4.223693
Control-1001733 stress             3.307299
Control-1017118 Untreated          8.605775
Control-1017118 stress             5.923771
Control-1025045 Untreated          5.488372
Control-1025045 stress             4.039930
Control-1048087 Untreated          4.258272
Control-1048087 stress             3.822094
TDP--43-G348V-1057052 Untreated    1.688427
TDP--43-G348V-1057052 stress       1.205556
TDP--43-N390D-1005373 Untreated    3.614465
TDP--43-N390D-1005373 stress       2.595823
Name: n_valid_tiles, dtype: float64
In [80]:
plot_catplot(df_dapi, sns.color_palette('colorblind'), reps=reps,x='cell_line', y_title='Valid Tiles Count', x_title='Cell Line', y='n_valid_tiles', hue='rep',
             height=4, aspect=2)
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1028: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame.
Try using .loc[row_indexer,col_indexer] = value instead

See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
  colors_list = custom_palette
/home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/tools/preprocessing_tools/qc_reports/qc_utils.py:1039: UserWarning: The palette list has more values (10) than needed (2), which may not be intended.
  g.set_axis_labels(x_title, y_title)

Show Mean of cell count in valid tiles¶

In [81]:
# plot_hm(df_dapi, split_by='rep', rows='cell_line', columns='panel', vmax=3)

Assessing Staining Reproducibility and Outliers¶

In [31]:
# for batch in batches:
#     print(batch)
#     run_calc_hist_new(batch,cell_lines_for_disp, markers, root_directory_raw, root_directory_proc,
#                            hist_sample=10,sample_size_per_markers=10, ncols=4, nrows=1, figsize=(6,2))
#     print("="*30)
    
In [9]:
# save notebook as HTML ( the HTML will be saved in the same folder the original script is)
display(Javascript('IPython.notebook.save_checkpoint();'))
os.system(f'jupyter nbconvert --to html tools/preprocessing_tools/qc_reports/qc_report_funova_exp3.ipynb --output {NOVA_HOME}/manuscript/preprocessing_qc_reports/qc_report_funova_exp3.html')
[NbConvertApp] Converting notebook tools/preprocessing_tools/qc_reports/qc_report_funova_exp3.ipynb to html
[NbConvertApp] Writing 16786962 bytes to /home/labs/hornsteinlab/Collaboration/NOVA_GAL/NOVA/manuscript/preprocessing_qc_reports/qc_report_funova_exp3.html
Out[9]:
0
In [ ]: